package com.amsp.oa.oademo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@TableName("work_plan_assessment_detail")
@ApiModel(value = "工作计划考核明细")
public class WorkPlanAssessmentDetail {

    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("考核表ID")
    private Long assessmentId;

    @ApiModelProperty("类别ID")
    private Long categoryId;

    @ApiModelProperty("类别名称")
    @TableField(exist = false)
    private String categoryName;

    @ApiModelProperty("月度主要工作任务")
    private String monthlyTask;

    @ApiModelProperty("计划达成的目标")
    private String plannedGoal;

    @ApiModelProperty("考核标准")
    private String evaluationCriteria;

    @ApiModelProperty("权重(%)")
    private BigDecimal weight;

    @ApiModelProperty("实际达成")
    private String actualAchievement;

    @ApiModelProperty("自评得分")
    private BigDecimal selfScore;

    @ApiModelProperty("上级评分")
    private BigDecimal superiorScore;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;
}